1. Field of the Invention
The present invention relates generally to the field of signal tracking by determining the carrier frequency and phase angle of a bi-phase shift keying signal when the spread spectrum code is known. This is especially applicable to acquiring Global Positioning System (GPS) signals whose carrier frequency can be doppler shifted by relative velocity of satellites to the receiver and phase shifted by propagation distance.
2. Description of the Prior Art
In the conventional method of tracking a Global Positioning System (GPS) signal, a full-time acquisition process must be used first to determine the initial condition of the signal tracking loop. This acquisition process is to determine the satellite number, the carrier frequency, and the phase angle of the coarse/acquisition (C/A) code. Close synchronization of the input signal with the locally generated codes and signals to demodulate, or "de-spread", the signal is required for these systems.
The Global Positioning System (GPS) is part of a satellite-based navigation system developed by the United States Defense Department under its NAVSTAR satellite program. A fully operational GPS includes up to 24 satellites approximately uniformly dispersed around six circular orbits having four satellites each, the orbits being inclined at an angle of 55 degrees relative to the equator and being separated from each other by multiples of 60 degrees of longitude. The orbits have radii of 26,560 kilometers and are approximately circular. The orbits are non-geosynchronous, with 0.5 sidereal day (11.967 hours) orbital time intervals, so that the satellites move with time relative to the Earth below. Theoretically, four or more GPS satellites will be visible from most points on the Earth's surface, and visual access to four or more such satellites can be used to determine an observer's position anywhere on the Earth's surface, 24 hours per day. Each satellite carries a cesium or rubidium atomic clock to provide timing information for the signals transmitted by the satellites. Internal clock correction is provided for each satellite clock.
Each GPS satellite transmits two spread spectrum, L-band carrier signals: an L1 signal having a frequency f1=1575.42 MHz and an L2 signal having a frequency f2=1227.6 MHz. These two frequencies are integral multiples f1=1540 f0 and f2=1200 f0 of a base frequency f0=1.023 MHz. The L1 signal from each satellite is binary phase shift keying (BPSK) modulated by two pseudo-random noise (PRN) codes in phase quadrature, designated as the C/A code and P-code. The L2 signal from each satellite is BPSK-modulated by only the P-code. The nature of these PRN codes is described below. One motivation for use of the two carrier signals L1 and L2 is to allow partial compensation for propagation delay of such a signal through the ionosphere, which delay varies approximately as the inverse square of signal frequency f (delay varies as 1/f.sup.2). This phenomenon is discussed by MacDoran in U.S. Pat. No. 4,463,357, which discussion is incorporated by reference herein. When transit time delay through the ionosphere is determined, a phase delay associated with a given carrier signal can be determined.
Use of the PRN codes allows use of a plurality of GPS satellite signals for determining an observer's position and for providing navigation information. A signal transmitted by a particular GPS signal is selected by generating and matching, or correlating, the PRN code for that particular satellite. All PRN codes are known and are generated or stored in GPS satellite signal receivers carried by ground observers. A first PRN code for each GPS satellite, sometimes referred to as a precision code or P-code, is a relatively long, fine-grained code having an associated clock or chip rate of 10 f.sub.0 =10.23 MHz. A second PRN code for each GPS satellite, sometimes referred to as a coarse/acquisition code or C/A code, is intended to facilitate rapid satellite signal acquisition and hand-over to the P-code and is a relatively short, coarser-grained code having a clock or chip rate of f.sub.0 =1.023 MHz. The C/A code for any GPS satellite has a length of 1023 chips or time increments before this code repeats. The full P-code has a length of 259 days, with each satellite transmitting a unique portion of the full P-code. The portion of P-code used for a given GPS satellite has a length of precisely one week (7.000 days) before this code portion repeats. Accepted methods for generating the C/A code and P-code are set forth in the document GPS Interface Control Document ICD-GPS-200, published by Rockwell International Corporation, Satellite Systems Division, Revision B-PR, Jul. 3, 1991, which is incorporated by reference herein.
The GPS satellite bit stream includes navigational information on the ephemeris of the transmitting GPS satellite and an almanac for all GPS satellites, with parameters providing corrections for ionospheric signal propagation delays suitable for single frequency receivers and for an offset time between satellite clock time and true GPS time. The navigational information is transmitted at a rate of 50 Baud. A useful discussion of the GPS and techniques for obtaining position information from the satellite signals is found in Tom Logsdon, The NAVSTAR Global Positioning System, Van Nostrand Reinhold, New York, 1992, pp. 1-90, incorporated by reference herein.
The fundamental concepts of GPS reception is disclosed Wong et al. in U.S. Pat. No. 4,613,977. The C/A code has a chip rate of 1.023 Mhz and a length of 1023 chips, thus, the code repeats itself every millisecond. The code is chosen to be a pseudo-random spread spectrum modulation. The carrier frequency of the GPS signal is at 1575.42 Mhz. The C/A code and the carrier are synchronized. The carrier is bi-phase coded by the C/A code. The navigation data of the GPS C/A code is 50 Hz, which means there may be a phase shift every 20 ms due to the navigation code. If there is no phase shift, the phase shift between two consecutive milliseconds of data is a constant. If there is a navigation data bit change, the phase change between the two consecutive milliseconds of data will differ from the linear changing phase angle with a discontinuity of 180 degrees.
The conventional approach to processing a GPS signal is through two control loops: a code loop (or an early-late delay-lock loop) and a carrier loop (or a radio frequency (RF) phase-locked loop). This apparatus is shown by Hutchinson in U.S. Pat. No. 5,223,843. The two loops must operate together to de-spread the signal, track the carrier frequency and detect the phase shift in the GPS satellite signal. The employed apparatus is often referred to as the signal tracking loop. A simplified block diagram of a conventional approach is shown in FIG. 1. In this figure, the digitized signal passes a first mixer 10 to strip the carrier frequency, since the other input to the mixer 10 is an estimate of the carrier signal from the carrier loop. The output from the first mixer contains only the C/A code and the navigation and the navigation data. The second mixer 11 will strip the code, because the other input to this mixer 11 is an estimate of the code from the code loop. Thus, the output from the second mixer is a continuous wave (CW) signal and the navigation data. A narrow band filter can determine the frequency and the phase change of the GPS satellite signal. The two loops operate together in a continuous manner.
The disadvantages of the FIG. 1 conventional acquisition process include its complexity; moreover this implementation is designed such that the internally generated codes and signals must maintain close synchronization in order to allow further processing. In addition to reducing these difficulties te present invention is more robust to input signal level changes.